﻿using Kingdee.BOS.Core.List.PlugIn;
using Kingdee.BOS.Core.List.PlugIn.Args;
using Kingdee.BOS.Core.Metadata;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace K.KDL
{
    [Description("根据条件格式化行颜色")]
    public class StkInventoryExpireDateAlertListPlugIn : AbstractListPlugIn
    {
        public override void OnFormatRowConditions(ListFormatConditionArgs args)
        {
            // 根据日期比较结果，格式化本行颜色		
            if (args.DataRow.ColumnContains("FExpiryDate")
                && !string.IsNullOrWhiteSpace(args.DataRow["FExpiryDate"]?.ToString())
                && Convert.ToDateTime(args.DataRow["FExpiryDate"].ToString()).Date > DateTime.Now.Date)
            {
                // 创建行格式化描述对象			
                FormatCondition formatRow = new FormatCondition();
                formatRow.ApplayRow = true;
                // 整行应用此配置			
                //formatRow.Key = "FDate";  
                // 如果仅仅格式化单个字段，需用此属性指定被格式化的字段Key			
                formatRow.ForeColor = "#FF0000";
                // 前景色			
                formatRow.BackColor = "#FFFF00"; // 背景色			
                formatRow.FontBold = true; // 粗体			
                // 说明：formatRow对象的其他属性，在OnFormatRowConditions事件中，无需关注，也不会被应用

                // 把行格式化描述对象，添加到事件参数中输出			
                args.FormatConditions.Add(formatRow);
            }
        }
    }
}
